package com.skyline.attraction.dao;

import java.util.List;

import com.skyline.attraction.model.AttractionFeature;
import com.skyline.base.type.Activity;
import com.skyline.common.bean.Page;

public interface AttractionFeatureDao {
	/**
	 * 
	 * @param attractionId
	 * @param attractionName
	 * @param attractionPortrait
	 * @param ownerId 景点管理员
	 * @param ownerNickname
	 * @param ownerPortrait
	 * @param creatorId 特色创建人
	 * @param creatorNickName
	 * @param creatorPortrait
	 * @param title
	 * @param detail
	 * @param albumId
	 * @return
	 */
	public Long insertFeature(Long attractionId, String attractionName, String attractionPortrait, Long ownerId,
			String ownerNickname, String ownerPortrait, Long creatorId, String creatorNickName, String creatorPortrait,
			String portrait, String title, String detail, Integer consume, Long albumId);

	/**
	 * 修改特色信息
	 * 
	 * @param id
	 * @param title
	 * @param detail
	 * @param consume
	 */
	public void updateFeature(Long id, String title, String detail, Integer consume);

	/**
	 * 修改特色的状态
	 * 
	 * @param id
	 * @param activity
	 */
	public void updateActivity(Long id, Activity activity);

	/**
	 * 改变特色的头像
	 * 
	 * @param id
	 * @param portrait
	 */
	public void updatePortrait(Long id, String portrait);

	/**
	 * 特色评分变更
	 * 
	 * @param id
	 */
	public void updateStar(Long id, Float star);

	/**
	 * 查找同一景点的所有特色
	 * 
	 * @param attractionId
	 * @param activity
	 * @return
	 */
	public List<AttractionFeature> queryFeaturesByAttractionId(Long attractionId, Page page, Activity activity);

	/**
	 * 根据ID精确查找特色
	 * 
	 * @param id
	 * @param activiy
	 * @return
	 */
	public AttractionFeature queryFeatureById(Long id, Activity activiy);

	public List<AttractionFeature> querySomeFeaturesOfAttraction(Long attractionId, Activity activity, Integer size);

}
